之前我一位朋友聽其他人說 Docker 很重要,覺得自己也應該要好好學一下,
於是我朋友他就去了書局現場瀏覽了幾本講解 Docker 的書,回家之後也實際安裝了 Docker,並執行基本的指令來用用看。
後來,他嘗試在開發時引入 Docker,想改成用 Docker 來作為佈署網站前後端的環境,但他卡關失敗了,一直無法成功使用 Docker 來完成佈署,
因為有開發上的時間壓力,因為當時不使用 Docker 也能完成佈署並交付,因為有其他好多東西要學,所以 Docker 的學習與使用就被暫時擱在了一旁,雖然基本的 Docker 指令他大概都會用,但在開發跟佈署上一直都還沒成功引入 Docker,
然後就到現在了,而至於為什麼我那麼清楚他碰壁的故事,當然是因為我朋友就是我自己,
我直到今年下半年才真的對 Docker 有了一些比較完整的理解,大概是因為在工作上更多地使用到 Docker,並坐下來把一本 Docker 教學書讀完,心中對於 Docker 的想像才終於成型,雖然還有很多細節沒有完全搞懂,但至少對整體概念有了輪廓。
我認為 Docker (或說 Container) 的概念非常抽象,對我來說它跟 Git 很類似,在現實中幾乎沒有物體或概念可以拿來做比喻,又同樣都是摸不到看不到,因此對於新手來說,學習的過程中非常容易卡住,
但另一方面,Docker 也確實已經在軟體領域中佔據了重要的地位,尤其是對於後端的開發者,幾乎是必備的技能或工具,
從前的我想學,也依然因為卡住而擱置了,
但現在的我,則認為 Docker 其實沒有那麼難,也許是因為自己跨過了入門知識的檻,又或者純粹是因為我學會了,所以自然不覺得難,
而不管是因為什麼原因,我都覺得學習 Docker 的過程應該能變得更簡單而有趣,於是我想透過這一個系列,嘗試讓因為 Docker 感到苦手的讀者可以更快地上手,並感受到 Docker 厲害又好玩的地方。
Here we go!